package com.learn.project2.model.vo.wx.order;

import com.learn.project2.bean.MarketOrderGoods;
import com.learn.project2.bean.MarketOrderGoodsExample;
import lombok.Data;

import java.math.BigDecimal;
import java.util.List;

/**
 * @Classname OrderDetailVO2
 * @Description TODO
 * @author王茁
 * @Date 2022/1/10 21:50
 */
@Data
public class OrderDetailVO2 {

    /**
     * expressInfo : []
     * orderInfo : {"expName":"韵达速递","consignee":"usr","address":"河南省驻马店市确山县 邓京龙家","addTime":"2022-01-08 17:06:34","orderSn":"20220108451009","actualPrice":378,"mobile":"13212365478","message":"","expCode":"YD","orderStatusText":"已收货","aftersaleStatus":0,"goodsPrice":398,"expNo":"7433759","couponPrice":20,"id":32,"freightPrice":0,"handleOption":{"cancel":false,"delete":true,"pay":false,"comment":true,"confirm":false,"refund":false,"rebuy":true,"aftersale":true}}
     * orderGoods : [{"id":35,"orderId":32,"goodsId":1023003,"goodsName":"100年传世珐琅锅 全家系列","goodsSn":"1023003","productId":33,"number":1,"price":398,"specifications":["标准"],"picUrl":"http://yanxuan.nosdn.127.net/c39d54c06a71b4b61b6092a0d31f2335.png","comment":1063,"addTime":"2022-01-08 17:06:34","updateTime":"2022-01-10 21:25:38","deleted":false}]
     */

    private OrderInfoBean orderInfo;
    private List<?> expressInfo;
    private List<MarketOrderGoods> orderGoods;

    public List<MarketOrderGoods> getOrderGoods() {
        return orderGoods;
    }

    public void setOrderGoods(List<MarketOrderGoods> orderGoods) {
        this.orderGoods = orderGoods;
    }

    @Data
    public static class OrderInfoBean {
        /**
         * expName : 韵达速递
         * consignee : usr
         * address : 河南省驻马店市确山县 邓京龙家
         * addTime : 2022-01-08 17:06:34
         * orderSn : 20220108451009
         * actualPrice : 378.0
         * mobile : 13212365478
         * message :
         * expCode : YD
         * orderStatusText : 已收货
         * aftersaleStatus : 0
         * goodsPrice : 398.0
         * expNo : 7433759
         * couponPrice : 20.0
         * id : 32
         * freightPrice : 0.0
         * handleOption : {"cancel":false,"delete":true,"pay":false,"comment":true,"confirm":false,"refund":false,"rebuy":true,"aftersale":true}
         */

        private String expName;
        private String consignee;
        private String address;
        private String addTime;
        private String orderSn;
        private BigDecimal actualPrice;
        private String mobile;
        private String message;
        private String expCode;
        private String orderStatusText;
        private int aftersaleStatus;
        private BigDecimal goodsPrice;
        private String expNo;
        private BigDecimal couponPrice;
        private int id;
        private BigDecimal freightPrice;
        private HandleOptionBean handleOption;


@Data
        public static class HandleOptionBean {
            /**
             * cancel : false
             * delete : true
             * pay : false
             * comment : true
             * confirm : false
             * refund : false
             * rebuy : true
             * aftersale : true
             */

            private boolean cancel;
            private boolean delete;
            private boolean pay;
            private boolean comment;
            private boolean confirm;
            private boolean refund;
            private boolean rebuy;
            private boolean aftersale;

            public boolean isCancel() {
                return cancel;
            }

            public void setCancel(boolean cancel) {
                this.cancel = cancel;
            }

            public boolean isDelete() {
                return delete;
            }

            public void setDelete(boolean delete) {
                this.delete = delete;
            }

            public boolean isPay() {
                return pay;
            }

            public void setPay(boolean pay) {
                this.pay = pay;
            }

            public boolean isComment() {
                return comment;
            }

            public void setComment(boolean comment) {
                this.comment = comment;
            }

            public boolean isConfirm() {
                return confirm;
            }

            public void setConfirm(boolean confirm) {
                this.confirm = confirm;
            }

            public boolean isRefund() {
                return refund;
            }

            public void setRefund(boolean refund) {
                this.refund = refund;
            }

            public boolean isRebuy() {
                return rebuy;
            }

            public void setRebuy(boolean rebuy) {
                this.rebuy = rebuy;
            }

            public boolean isAftersale() {
                return aftersale;
            }

            public void setAftersale(boolean aftersale) {
                this.aftersale = aftersale;
            }
        }
    }

    public static class OrderGoodsBean {
        /**
         * id : 35
         * orderId : 32
         * goodsId : 1023003
         * goodsName : 100年传世珐琅锅 全家系列
         * goodsSn : 1023003
         * productId : 33
         * number : 1
         * price : 398.0
         * specifications : ["标准"]
         * picUrl : http://yanxuan.nosdn.127.net/c39d54c06a71b4b61b6092a0d31f2335.png
         * comment : 1063
         * addTime : 2022-01-08 17:06:34
         * updateTime : 2022-01-10 21:25:38
         * deleted : false
         */

        private int id;
        private int orderId;
        private int goodsId;
        private String goodsName;
        private String goodsSn;
        private int productId;
        private int number;
        private double price;
        private String picUrl;
        private int comment;
        private String addTime;
        private String updateTime;
        private boolean deleted;
        private String[] specifications;

        public int getId() {
            return id;
        }

        public void setId(int id) {
            this.id = id;
        }

        public int getOrderId() {
            return orderId;
        }

        public void setOrderId(int orderId) {
            this.orderId = orderId;
        }

        public int getGoodsId() {
            return goodsId;
        }

        public void setGoodsId(int goodsId) {
            this.goodsId = goodsId;
        }

        public String getGoodsName() {
            return goodsName;
        }

        public void setGoodsName(String goodsName) {
            this.goodsName = goodsName;
        }

        public String getGoodsSn() {
            return goodsSn;
        }

        public void setGoodsSn(String goodsSn) {
            this.goodsSn = goodsSn;
        }

        public int getProductId() {
            return productId;
        }

        public void setProductId(int productId) {
            this.productId = productId;
        }

        public int getNumber() {
            return number;
        }

        public void setNumber(int number) {
            this.number = number;
        }

        public double getPrice() {
            return price;
        }

        public void setPrice(double price) {
            this.price = price;
        }

        public String getPicUrl() {
            return picUrl;
        }

        public void setPicUrl(String picUrl) {
            this.picUrl = picUrl;
        }

        public int getComment() {
            return comment;
        }

        public void setComment(int comment) {
            this.comment = comment;
        }

        public String getAddTime() {
            return addTime;
        }

        public void setAddTime(String addTime) {
            this.addTime = addTime;
        }

        public String getUpdateTime() {
            return updateTime;
        }

        public void setUpdateTime(String updateTime) {
            this.updateTime = updateTime;
        }

        public boolean isDeleted() {
            return deleted;
        }

        public void setDeleted(boolean deleted) {
            this.deleted = deleted;
        }

        public String[] getSpecifications() {
            return specifications;
        }

        public void setSpecifications(String[] specifications) {
            this.specifications = specifications;
        }
    }
}
